home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-08-18 | 1.6 KB | 80 lines | [TEXT/PJMM] |
- unit TxWrite;
-
-
- interface
-
- uses
- HelloTabby;
-
- procedure MakeTextFile (FileName: STR255);
- function AtEOF (fRefNum: Integer): Boolean;
- function Wr (FileRefNum: integer; TheMessage: str255): OSErr;
- function WrLn (FileRefNum: integer; TheMessage: str255): OSErr;
-
- implementation
-
- {----------------------------------------------------------------- }
-
- procedure MakeTextFile;
-
- { Sets up QUED-compatible text file }
-
- var
- fndrInfo: FInfo;
-
- begin
- Err := GetFInfo(FileName, vRefNum, fndrInfo);
- if Err = noErr then
- begin
- fndrInfo.fdType := 'TEXT';
- fndrInfo.fdCreator := 'QED1';
- Err := SetFInfo(FileName, vRefNum, fndrInfo);
- end
- else
- Err := Create(FileName, vRefNum, 'QED1', 'TEXT');
- end;
-
- { ------------------------------------------------------ }
-
- function AtEOF;
-
- var
- Err: OSErr;
- currPos, eofPos: LongInt;
-
- begin
- Err := GetFPos(fRefNum, currPos);
- Err := GetEOF(fRefNum, eofPos);
- AtEOF := currPos = eofPos
- end;
-
- { ------------------------------------------------------ }
-
- function Wr;
-
- { Writes string (without length byte) to text file, returns error code }
-
- var
- TheLength: longint;
-
- begin
- TheLength := length(TheMessage);
- Wr := FSWrite(FileRefNum, TheLength, Pointer(ord(@TheMessage) + 1))
- end;
-
- { ------------------------------------------------------ }
-
- function WrLn;
-
- { Writes string (without length byte) to text file, returns error code }
-
- const
- ENDLINE = chr(13);
-
- begin
- TheMessage := concat(TheMessage, ENDLINE);
- WrLn := Wr(FileRefNum, TheMessage)
- end;
-
- { ------------------------------------------------------ }
- end.